<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>

</body>
<script>
    // Promise   异步编程的解决方法
    // 优点:  将异步操作 以近似同步的流程 表现出来

    // Promise的状态
    //  pending  fulfilled reject

    // Promise的特征
    // 1. Promise的状态不受外界影响,只有异步操作的结果，可以决定当前是哪一种状态
    // 2. Promise的状态 只能从pending  =>  fulfilled , pending => reject 一经改变无法再次修改

    var p = new Promise(function (resolve, reject) {
        // setTimeout(function () {
        //     resolve(1); //{<fulfilled>:1}
        // }, 1000)
    })
    console.log(p); // {<pending>:undefined}

    // Promise实例的方法
    // p.then(resolveHandler,rejectHandler)
    // p.catch(rejectHandler)
    // p.finally()

    // 链式操作
    // p.then(resolveHandler).then(resolveHandler).then(resolveHandler).catch(rejectHandler)

    // 构造函数Promise的方法:
    // Promise.all()
    // Promise.race()
    // Promise.allsettled()
    // Promise.any()
    // Promise.reolve()
    // Promise.reject()


    // async await   









</script>

</html>